package cn.com.chengmandian.rabbitmq.pojo;

import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data
@Accessors(chain = true)
public class IotDeviceGps implements Serializable {

    /**
     * 设备关联产品编号
     */
    private String productKey;

    /**
     * 设备编号
     */
    private String deviceNo;

    /**
     * 通道ID
     */
    private String channelId;

    /**
     * 站点芯片uid(refId)
     */
    private String uid;

    /**
     * 经度
     */
    private BigDecimal longitude;

    /**
     * 纬度
     */
    private BigDecimal latitude;

    /**
     * 海拔高度
     * 用于表示 GPS 的海拔高度，占用 2 个字节。表示定位数据的高度。数值范
     * 围为-99999~+99999。
     */
    private short sea;

    /**
     * 方位角
     * 采用无符号 1 字节表示范围是 0~180 即在原始角度取整后，除 2 算出，后台
     * 换算时需*2 得出结果
     */
    private byte azimuth;

    /**
     * 速度
     * GPS 运行的速度，值范围为 0x00~0xFF 表示 0~255 公里/小时
     */
    private byte speed;

    /**
     * 信号状态
     */
    private short gsm;

    /**
     * 相对 SOC
     */
    private byte soc;
    private short socXd;
    private byte soh;

    /**
     * 充放电次数
     */
    private short cycles;

    /**
     * 骑行电流
     */
    private byte current;

    /**
     * 控制器温度
     */
    private short temperature;

    /**
     * 电压
     */
    private int voltage;

    /**
     * 车辆状态
     */
    private IotDeviceBike status;

    /**
     * 提交时间
     */
    private Long commitTime;
}
